Part Number Hot Search : 
14002 MJE2100 60HQXXX SMC20C PE4528 LM78M05 M74HC620 E2505H
Product Description
Full Text Search
 

To Download MAX31785 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  _______________________________________________________________ maxim integrated products 1 for pricing, delivery, and ordering information, please contact maxim direct at 1-888-629-4642, or visit maxims website at www.maxim-ic.com. 6-channel intelligent fan controller MAX31785 19-5703; rev 0; 12/10 + denotes a lead(pb)-free/rohs-compliant package. t = tape and reel. * ep = exposed pad. general description the MAX31785 is a closed-loop multichannel fan con - troller. automatic closed-loop fan control saves system power by operating the fans at the lowest possible speeds. added benefits of slower fan speeds include lower audible noise, longer fan life, and reduced system maintenance. based on a user-programmable lookup table (lut), the device automatically adjusts the speeds of the six independent fans based on one or more of the 11 available temperature sensors. alternately, an exter - nal host can manually command the fan speeds and the device automatically adjusts the fan speeds. the device contains a fan-health-diagnostic function to help users predict impending fan failures. the device can also monitor up to six remote voltages. applications network switches/routers base stations servers smart grid network systems industrial controls ordering information features s six independent channels of fan control supports 3-wire and 4-wire fans automatic closed-loop fan speed control rpm- or pwm-based control optional manual mode control fast and slow pwm frequency options staggered fan spin-up eases power-supply stress dual tachometer (12-fan support) fan-fault detection fan-health status meter nonvolatile fan operating run time meter s supports up to 11 temperature sensors up to six external thermal diodes with automatic series resistance cancellation one internal temperature sensor up to four i 2 c digital temperature sensors fault detection on all temperature sensors s available 6-channel adc to measure remote voltages s pmbus?-compliant command interface s i 2 c/smbus?-compatible serial bus with bus timeout function s on-board nonvolatile fault logging and default configuration setting s no external clocking required s +3.3v supply voltage pmbus is a trademark of smif, inc. smbus is a trademark of intel corp. part temp range pin-package MAX31785etl+ -40 n c to +85 n c 40 tqfn-ep* MAX31785etl+t -40 n c to +85 n c 40 tqfn-ep* note: some revisions of this device may incorporate deviations from published specifications known as errata. multiple revisions of any device may be simultaneously available through various sales channels. for information about device errata, go to: www.maxim-ic.com/errata .
6-channel intelligent fan controller MAX31785 2 table of contents absolute maximum ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 recommended operating conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 dc electrical characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 i 2 c/smbus interface electrical characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 i 2 c/smbus timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 typical operating characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 pin configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 pin description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 multiple device connection diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 detailed description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 address select . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 smbus/pmbus operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 smbus/pmbus communication examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 group command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 group command write format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 alert and alert response address (ara) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 alert response address (ara) byte format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 host sends or reads too few bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 host sends or reads too few bytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 host sends too many bytes or bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 host reads too many bytes or bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 host sends improperly set read bit in the slave address byte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 unsupported command code received . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 invalid data received . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 host reads from a write-only command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 host writes to a read-only command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 smbus timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 pmbus operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 pmbus protocol support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 data format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 interpreting received direct format values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 sending a direct format value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 fault management and reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 system watchdog timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 temperature sensor operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
6-channel intelligent fan controller MAX31785 3 table of contents (continued) fan control operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 dual fan applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 automatic fan control operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 pulse stretching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 fan spin-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 fan power-on sequencing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 fan health-meter function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 page (00h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 clear_faults (03h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 write_protect (10h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 store_default_all (11h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 restore_default_all (12h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 capability (19h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 vout_mode (20h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 vout_scale_monitor (2ah) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 fan_config_1_2 (3ah) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 fan_command_1 (3bh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 vout_ov_fault_limit (40h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 vout_ov_warn_limit (42h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 vout_uv_warn_limit (43h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 vout_uv_fault_limit (44h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 ot_fault_limit (4fh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 ot_warn_limit (51h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 status_byte (78h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 status_word (79h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 status_vout (7ah) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 status_cml (7eh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 status_mfr_specific (80h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 status_fans_1_2 (81h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 read_vout (8bh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 read_temperature_1 (8dh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 read_fan_speed_1 (90h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 pmbus_revision (98h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 mfr_id (99h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 mfr_model (9ah) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 mfr_revision (9bh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 mfr_location (9ch) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
6-channel intelligent fan controller MAX31785 4 table of contents (continued) mfr_date (9dh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 mfr_serial (9eh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 mfr_mode (d1h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 mfr_vout_peak (d4h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 mfr_temperature_peak (d6h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 mfr_vout_min (d7h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 mfr_fault_response (d9h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 mfr_nv_fault_log (dch) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 mfr_time_count (ddh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 mfr_temp_sensor_config (f0h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 mfr_fan_config (f1h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 mfr_fan_lut (f2h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 temperature step: temperature level setting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 fan speed step: fan pwm duty cycle or fan speed setting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 mfr_read_fan_pwm (f3h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 mfr_fan_fault_limit (f5h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 mfr_fan_warn_limit (f6h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 mfr_fan_run_time (f7h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 mfr_fan_pwm_avg (f8h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 mfr_fan_pwm2rpm (f9h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 applications information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 power-supply decoupling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 open-drain pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 typical operating circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 package information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
6-channel intelligent fan controller MAX31785 5 list of figures figure 1. automatic fan control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 figure 2. fan speed example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 figure 3. fan spin-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 figure 4. fan pwm to rpm example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 figure 5. mfr_nv_fault_log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 figure 6. fan lookup table (lut) format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 list of tables table 1. pmbus command codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 table 2. pmbus/smbus serial-port address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 table 3. pmbus command code coefficients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 table 4. coefficients for direct format value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 table 5. device parametric monitoring states . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 table 6. ds75lv address pin configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 table 7. fan control operation modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 table 8. fan health conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 table 9. page commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 table 10. write_protect command byte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 table 11. capability command byte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 table 12. vout_scale_monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 table 13. fan_config_1_2 command byte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 table 14. pwm fan mode (fan_config_1_2 bit 6 = 0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 table 15. rpm fan mode (fan_config_1_2 bit 6 = 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 table 16. status_byte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 table 17. status_word . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 table 18. status_vout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 table 19. status_cml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 table 20. status_mfr_specific . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 table 21. status_fans_1_2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 table 22. mfr_mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 table 23. mfr_fault_response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 table 24. mfr_nv_fault_log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 table 25. mfr_temp_sensor_config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 table 26. mfr_fan_config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 table 27. mfr_fan_lut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 table 28. valid temperature range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 table 29. monitored fan fault and warning parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 table 30. mfr_fan_pwm2rpm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
6-channel intelligent fan controller MAX31785 6 stresses beyond those listed under absolute maximum ratings may cause permanent damage to the device. these are stress ratings only, and functional operation of the device at these or any other conditions beyond those indicated in the operational sections of the specifications is not implied. exposure to absolute maximum rating conditions for extended periods may affect device reliability. v dd to v ss ........................................................... -0.3v to +5.5v rs- to v ss ............................................................ -0.3v to +0.3v all other pins except reg18 and reg25 relative to v ss ........................ -0.3v to (v dd + 0.3v)* continuous power dissipation (t a = +70 n c) tqfn (derate 35.7mw/ n c above +70 n c) ............... 2857.1mw operating temperature range .......................... -40 n c to +85 n c storage temperature range ............................ -55 n c to +125 n c lead temperature (soldering, 10s) ................................ +260 n c soldering temperature (reflow) ...................................... +260 n c recommended operating conditions (t a = -40 n c to +85 n c.) absolute maximum ratings dc electrical characteristics (v dd = 2.7v to 5.5v, t a = -40 n c to +85 n c, unless otherwise noted. typical values are at v dd = 3.3v, t a = +25 n c, unless otherwise noted.) * subject to not exceeding +5.5v. parameter symbol conditions min typ max units v dd operating voltage range v dd (note 1) 2.7 5.5 v input logic 1 v ih 0.7 x v dd v dd + 0.3 v input logic 0 v il -0.3 0.3 x v dd v input logic-high: scl, sda, mscl, msda v i2c_ih 2.7v p v dd p 3.6v (note 1) 2.1 v dd + 0.3 v input logic-low: scl, sda, mscl, msda v i2c_il 2.7v p v dd p 3.6v (note 1) -0.5 +0.8 v parameter symbol conditions min typ max units supply current i cpu (note 2) 3 ma i program 8 brownout voltage v bo monitors v dd (note 1) 2.40 2.46 2.55 v brownout hysteresis v boh monitors v dd (note 1) 30 mv internal system clock f mosc 4.0 mhz system clock error (note 3) f err:mosc +25 n c p t a p +85 n c -3 +2 % -40 n c p t a p +25 n c -6.5 +1.6 output logic-low v ol1 i ol = 4ma (note 1) 0.4 v output logic-high v oh1 i oh = -2ma (note 1) v dd - 0.5 v pwm pullup current i pu v pin = v ss , v dd = 3.3v 38 55 107 f a adc internal reference 1.225 v adc voltage measurement error v err -1 +1 %
6-channel intelligent fan controller MAX31785 7 dc e lectrical characteristics (continued) (v dd = 2.7v to 5.5v, t a = -40 n c to +85 n c, unless otherwise noted. typical values are at v dd = 3.3v, t a = +25 n c, unless otherwise noted.) parameter symbol conditions min typ max units adc internal reference temperature drift -0.5 +0.5 % adc internal reference initial accuracy (+25 n c) -1 +1 mv adc full-scale input voltage v fs 1.213 1.225 1.237 v adc measurement resolution v lsb 300 f v adc bit resolution 12 bits rs+ input resistance r in 15 m i adc integral nonlinearity inl q 4 lsb adc differential nonlinearity dnl q 1 lsb adc offset v offset q 2 lsb internal temperature measurement error t a = -40 n c to +85 n c -3 +3 n c remote temperature measurement error (MAX31785 error only) t a = 0 n c to +60 n c, t diode = +60 n c to +120 n c -1.5 +1.5 n c t a = 0 n c to +60 n c, t diode = -45 n c to +120 n c -1.75 +1.75 t a = -40 n c to +85 n c, t diode = + 60 n c to +120 n c -2.75 +2.75 t a = -40 n c to +85 n c, t diode = -45 n c to +120 n c -3.0 +3.0 store default all time 45 ms nonvolatile log write time 12 ms nonvolatile log delete time 200 ms flash endurance n flash t a = +50 n c 20,000 write cycles data retention t a = +50 n c 100 years voltage sample rate 10 ms rpm sample rate 1000 ms temperature sample rate 1000 ms device startup time measured from por until monitoring begins 12 ms fan pwm frequency 30 25,000 hz fan pwm resolution 7 bits
6-channel intelligent fan controller MAX31785 8 i 2 c/smbus interface electrical characteristics (v dd = 2.7v to 5.5v, t a = -40 n c to +85 n c, unless otherwise noted. typical values are at v dd = 3.3v, t a = +25 n c, unless otherwise noted.) note 1: all voltages are referenced to ground (v ss ). currents entering the ic are specified as positive, and currents exiting the ic are negative. note 2: this does not include pin input/output currents. note 3: guaranteed by design. i 2 c/smbus timing parameter symbol conditions min typ max units scl clock frequency f scl 10 100 khz bus free time between stop and start conditions t buf 4.7 f s hold time (repeated) start condition t hd:sta 4.0 f s low period of scl t low 4.7 f s high period of scl t high 4.0 f s data hold time t hd:dat receive 0 ns transmit 300 data setup time t su:dat 100 ns start setup time t su:sta 4.7 f s sda and scl rise time t r 300 ns sda and scl fall time t f 300 ns stop setup time t su:sto 4.0 f s clock low timeout t to 25 35 ms scl note: timing is referenced to v il(max) and v ih(min) . sda stop start repeated start t buf t hd:sta t hd:dat t su:dat t su:sto t hd:sta t sp t su:sta t high t r t f t low
6-channel intelligent fan controller MAX31785 9 typical operating characteristics (t a = +25c, unless otherwise noted.) fan power-on sequencing MAX31785 toc05 100ms/div 0v 0v 0v 0v 5v/div pwm2 pwm1 pwm0 control i dd vs. time during a nonvolatile log write (t a = +25c, v dd = 3.3v) MAX31785 toc04 2ms/div 0ma 1ma/div weak pullup voltage vs. time during power-up MAX31785 toc03 2ms/div 0v v dd pwmo 0v no load connected to pwm 2v/div supply current vs. temperature (v dd = 3.3v, no pwm switching) MAX31785 toc02 temperature (c) i dd (ma) 80 60 20 40 0 -20 2.2 2.4 2.6 2.8 3.0 3.2 3.4 3.6 3.8 4.0 2.0 -40 100 supply current vs. supply voltage (no pwm switching) MAX31785 toc01 v dd (v) i dd (ma) 5.1 4.7 3.9 4.3 3.5 3.1 2.2 2.4 2.6 2.8 3.0 3.2 3.4 3.6 3.8 4.0 2.0 2.7 5.5
6-channel intelligent fan controller MAX31785 10 pin description pin configuration pin name function 1 rs-4 ground reference for thermal diode or remote voltage adc4 measurement 2, 21, 36 v ss digital-supply return node (ground) 3 rs+4 thermal diode or remote voltage adc input, measurement relative to rs-4 4 rs-3 ground reference for thermal diode or remote voltage adc3 measurement 5 rs+3 thermal diode or remote voltage adc input, measurement relative to rs-3 6 rs+0 thermal diode or remote voltage adc input, measurement relative to rs-0 7 rs-0 ground reference for thermal diode or remote voltage adc0 measurement 8 rs+1 thermal diode or remote voltage adc input, measurement relative to rs-1 9 v dd supply voltage. bypass v dd to v ss with a 0.1 f f capacitor. 10 rs-1 ground reference for thermal diode or remote voltage adc1 measurement 11 rs+2 thermal diode or remote voltage adc input, measurement relative to rs-2 12 rs-2 ground reference for thermal diode or remote voltage adc2 measurement 13 rst reset active-low input 14 msda master i 2 c data input/output. open-drain output. 15 mscl master i 2 c clock input/output. open-drain output. 16 pwm5 fan pwm output #5. cmos push-pull output. low when the fan is disabled. a 100% duty cycle implies this pin is continuously high. 17 tach5 fan tachometer input 18 pwm4 fan pwm output #4. cmos push-pull output. low when the fan is disabled. a 100% duty cycle implies this pin is continuously high. 19 tach4 fan tachometer input top view 35 36 34 33 12 11 13 v ss rs-3 rs+3 rs+0 rs-0 14 rs-4 tach1 tach2 pwm2 pwm0 reg25 tach0 tach3 reg18 1 2 4 5 6 7 27 28 29 30 26 24 23 22 control v ss pwm4 tach5 pwm5 mscl rs+4 pwm1 3 25 37 a1/tachsel msda 38 39 40 rs-5 rs+5 rs-2 rs+2 ep a0 32 15 tach4 scl 31 16 17 18 19 20 pwm3 rs+1 v dd rs-1 v ss 8 9 10 21 sda fault alert rst + tqfn (6mm 6mm 0.75mm) MAX31785
6-channel intelligent fan controller MAX31785 11 pin description (continued) note: all pins except v dd , v ss , reg18, reg25, adc, and the ep are high impedance with a 50a pullup during device power-up and reset. after device reset, the weak pullup is removed, and the pin is configured as input or output. pin name function 20 pwm3 fan pwm output #3. cmos push-pull output. low when the fan is disabled. a 100% duty cycle implies this pin is continuously high. 22 reg18 regulator for low-voltage digital circuitry. bypass reg18 to v ss with 1 f f and 10nf capacitors. do not connect other circuitry to this pin. 23 tach3 fan tachometer input 24 pwm2 fan pwm output #2. cmos push-pull output. low when the fan is disabled. a 100% duty cycle implies this pin is continuously high. 25 tach2 fan tachometer input 26 pwm1 fan pwm output #1. cmos push-pull output. low when the fan is disabled. a 100% duty cycle implies this pin is continuously high. 27 tach1 fan tachometer input 28 pwm0 fan pwm output #0. cmos push-pull output. low when the fan is disabled. a 100% duty cycle implies this pin is continuously high. 29 reg25 regulator for analog circuitry. bypass reg25 to v ss with 1 f f and 10nf capacitors. do not connect other circuitry to this pin. 30 tach0 fan tachometer input 31 sda i 2 c/smbus-compatible input/output 32 scl i 2 c/smbus-compatible clock input 33 a0 smbus address 0 input. this pin is sampled on device power-up to determine the smbus address; connect a 100k i resistor from this pin to either v ss or v dd to set the address. 34 fault active-low, open-drain fault input/output. if enabled with the mfr_fault_response command, this pin is asserted during a fault condition (fan speed, overtemperature, overvoltage, or undervoltage). also, if enabled with the mfr_fault_response command, this pin is monitored and when it is asserted the fans can be configured to be forced to 100% pwm duty cycle. this pin is used to provide hardware fault control across multiple devices. this output is unconditionally deasserted when rst is asserted or the device is power cycled. this pin has a 50 f s deglitch filter. 35 control global fan-off control. when this pin is connected low, all fans are forced off (other functionality remains active). when this pin is connected high (or left open circuit), fans operate normally. this pin has a 50 f s deglitch filter and contains a weak pullup. 37 a1/ tachsel smbus address 1 input/dual tach-select output. this dual-function pin is sampled on device power-up to determine the smbus address; connect a 100k i resistor from this pin to either v ss or v dd to set the address. after device power-up, this pin becomes an output that selects between two tachometers in dual-fan applications. 38 alert active-low, open-drain alert output 39 rs-5 ground reference for thermal diode or remote voltage adc measurement 40 rs+5 thermal diode or remote voltage adc input, measurement relative to rs-5 ep exposed pad (bottom side of package). connect ep to v ss .
6-channel intelligent fan controller MAX31785 12 block diagram maxq is a registered trademark of maxim integrated products, inc. adc temp sensor flash ram a1/tachsel a0 mux msda v ss v ss v ss v dd reg18 reg25 mscl sda scl alert rst power control 2.5v vreg 1.8v vreg 4mhz oscillator smbus master interface smbus slave interface 16-bit maxq ? risc core system control signals pulse- width modulator pwm0 pwm1 pwm2 pwm3 pwm4 pwm5 fan tachometer inputs control rs+0 rs-0 rs+1 rs-1 rs+2 rs-2 rs+3 rs-3 rs+4 rs-4 rs+5 rs-5 tach0 tach1 tach2 tach3 tach4 tach5 fault MAX31785
6-channel intelligent fan controller MAX31785 13 multiple device connection diagram sda scl rst alert alert fault control a1/tachsel a0 sda scl rst alert fault control a1/tachsel a0 additional devices control data clock rst host interface +3.3v +3.3v MAX31785 #0 MAX31785 #1
6-channel intelligent fan controller MAX31785 14 table 1. pmbus command codes detailed description the MAX31785 is a closed-loop fan controller. automatic closed-loop fan control saves system power by operat - ing the fans at the lowest possible speeds. added ben - efits of slower fan speeds include lower audible noise, longer fan life, and reduced system maintenance. based on a user-programmable lookup table (lut), the device automatically adjust the speeds of the six independent fans based on one or more of the 11 available tem - perature sensors. temperature offset can be added to individual sensors to compensate for thermal differences in a system. alternately, an external host can manually command the fan speeds and the device automatically adjusts the fan speeds. the device can also monitor up to six remote voltages. the device provides alert and fault output sig - nals. host communications are conducted through a pmbus k -compatible communications port. address input connections are also provided to allow up to four MAX31785 devices to reside on the systems i/o bus. pmbus is a trademark of smif, inc. code command name type page 0C5 page 6C16 page 17C22 page 255 no. of bytes flash stored (note 2) default value (note 2) (note 1) 00h page r/w byte r/w r/w r/w r/w 1 n 00h 03h clear_faults send byte w w w w 0 n 10h write_protect r/w byte r/w r/w r/w r/w 1 n 00h 11h store_default_all send byte w w w w 0 n 12h restore_default_all send byte w w w w 0 n 19h capability read byte r r r r 1 n 00h/10h 20h vout_mode read byte r r r r 1 fixed 40h 2ah vout_scale_monitor r/w word r/w 2 y 7fffh 3ah fan_config_1_2 r/w byte r/w 1 y 00h 3bh fan_command_1 r/w word r/w 2 y ffffh 40h vout_ov_fault_limit r/w word r/w 2 y 7fffh 42h vout_ov_warn_limit r/w word r/w 2 y 7fffh 43h vout_uv_warn_limit r/w word r/w 2 y 0000h 44h vout_uv_fault_limit r/w word r/w 2 y 0000h 4fh ot_fault_limit r/w word r/w 2 y 7fffh 51h ot_warn_limit r/w word r/w 2 y 7fffh 78h status_byte read byte r r r r 1 n 00h 79h status_word read word r r r r 2 n 0000h 7ah status_vout read byte r 1 n 00h 7eh status_cml read byte r r r r 1 n 00h 80h status_mfr_specific read byte r 1 n 00h 81h status_fans_1_2 read byte r 1 n 00h 8bh read_vout read word r 2 n 0000h 8dh read_temperature_1 read word r 2 n 0000h 90h read_fan_speed_1 read word r 2 n 0000h 98h pmbus_revision read byte r r r r 1 fixed 11h 99h mfr_id read byte r r r r 1 fixed 4dh 9ah mfr_model read byte r r r r 1 fixed 53h 9bh mfr_revision read word r r r r 2 fixed 3030h 9ch mfr_location block r/w r/w r/w r/w r/w 8 y (note 3)
6-channel intelligent fan controller MAX31785 15 table 1. pmbus command codes (continued) note 1: common commands are shaded. access through any page results in the same device response. note 2: in the flash stored column, an n indicates that this parameter is not stored in flash memory when the store_ default_all command is executed and the value shown in the default value column is automatically loaded upon power-on reset or when the rst pin is asserted. a y in the flash stored column indicates that the currently loaded value in this parameter is stored in flash memory when the store_default_all command is executed and is automati - cally loaded upon power-on reset or when the rst pin is asserted and the value shown in the default value column is the value when shipped from the factory. fixed in the flash stored column means this value is fixed at the factory and cannot be changed. note 3: the factory-set default value for this 8-byte block is 3130313031303130h. note 4: the factory-set default value for the complete block of the mfr_nv_fault_log is ffh. note 5: the factory-set default value for the complete block is 00h. code command name type page 0C5 page 6C16 page 17C22 page 255 no. of bytes flash stored (note 2) default value (note 2) (note 1) 9dh mfr_date block r/w r/w r/w r/w r/w 8 y (note 3) 9eh mfr_serial block r/w r/w r/w r/w r/w 8 y (note 3) d1h mfr_mode r/w word r/w r/w r/w r/w 2 y 0000h d4h mfr_vout_peak r/w word r/w 2 n 0000h d6h mfr_temperature_peak r/w word r/w 2 n 8000h d7h mfr_vout_min r/w word r/w 2 n 7fffh d9h mfr_fault_response r/w byte r/w r/w r/w 1 y 00h dch mfr_nv_fault_log block read r r r r 255 y (note 4) ddh mfr_time_count block r/w r/w r/w r/w r/w 4 n (note 5) f0h mfr_temp_sensor_config r/w word r/w 2 y 0000h f1h mfr_fan_config r/w word r/w 2 y 0000h f2h mfr_fan_lut block r/w r/w 32 y (note 5) f3h mfr_read_fan_pwm read word r 2 n 0000h f5h mfr_fan_fault_limit r/w word r/w 2 y 0000h f6h mfr_fan_warn_limit r/w word r/w 2 y 0000h f7h mfr_fan_run_time r/w word r/w 2 y 0000h f8h mfr_fan_pwm_avg r/w word r/w 2 y 0000h f9h mfr_fan_pwm2rpm block r/w r/w 8 y (note 5)
6-channel intelligent fan controller MAX31785 16 address select on device power-up, the device samples the a0 and a1 pins to determine the pmbus/smbus serial-port address. smbus/pmbus operation the device implements the pmbus command structure using the smbus format. the structure of the data flow between the host and the slave is shown below for sev - eral different types of transactions. data is sent most significant bit (msb) first. table 2. pmbus/smbus serial-port address smbus/pmbus communication examples key: s = start sr = repeated start p = stop w = write bit (0) r = read bit (1) a = acknowledge (0) na = not acknowledge (1) shaded block = slave transaction read word format 1 7 1 1 8 1 1 7 1 1 8 1 8 1 1 s slave address w a command code a sr slave address r a data byte low a data byte high na p read byte format 1 7 1 1 8 1 1 7 1 1 8 1 1 s slave address w a command code a sr slave address r a data byte na p write word format 1 7 1 1 8 1 8 1 8 1 1 s slave address w a command code a data byte low a data byte high a p write byte format 1 7 1 1 8 1 8 1 1 s slave address w a command code a data byte a p send byte format 1 7 1 1 8 1 1 s slave address w a command code a p a1 a0 7-bit slave address 100k i to v ss 100k i to v ss 1010 010 (a4h) 100k i to v dd 1010 011 (a6h) 100k i to v dd 100k i to v ss 1010 100 (a8h) 100k i to v dd 1010 101 (aah)
6-channel intelligent fan controller MAX31785 17 group command the device supports the group command. with the group command, a host can write different data to multiple devices on the same serial bus with one long continuous data stream. all the devices addressed dur - ing this transaction wait for the host to issue a stop before beginning to respond to the command. key: s = start sr = repeated start p = stop w = write bit (0) a = acknowledge (0) shaded block = slave transaction group command write format addressing the device responds to receiving its fixed slave address by asserting an acknowledge (ack) on the bus. the device does not respond to a general call address; it only responds when it receives its fixed slave address. the only exception to this operation is if the alert output is enabled (alert bit = 1 in mfr_mode) and alert has been asserted. when this condition occurs, the device only recognizes the alert response address (0001 100, 18h). see the alert and alert response address (ara) section for more details. alert and alert response address (ara) if the alert output is enabled (alert bit = 1 in mfr_mode), when a fault occurs the device asserts the alert signal and then waits for the host to send the alert response address (ara) as shown in the alert response address (ara) byte format section. while waiting for the ara, the device does not respond to its fixed slave address. when the ara is received and the device is asserting alert , the device acks it and then attempts to place its fixed slave address on the bus by arbitrating the bus, since another device could also try to respond to the ara. the rules of arbitration state that the lowest address device wins. if the device wins the arbitration, it deasserts alert and begins to respond to its fixed slave address. if the device loses arbitration, it keeps alert asserted and waits for the host to once again send the ara. slave address, command byte, and data word for device 1 1 7 1 1 8 1 8 1 8 1 s slave address w a command code a data byte low a data byte high a u u u slave address, command byte, and data byte for device 2 1 7 1 1 8 1 8 1 sr slave address w a command code a data byte a u u u slave address and send byte for device 3 1 7 1 1 8 1 sr slave address w a command code a u u u u u u slave address, command byte, and data word for device n 1 7 1 1 8 1 8 1 8 1 1 sr slave address w a command code a data byte low a data byte high a p
6-channel intelligent fan controller MAX31785 18 host sends or reads too few bits if for any reason the host does not complete writing a full byte or reading a full byte from the device before a start or stop is received, the device does the following: 1) ignores the command. 2) sets the cml bit in status_byte. 3) sets the cml bit in status_word. 4) sets the data_fault bit in status_cml. 5) notifies the host through alert assertion (if enabled). host sends or reads too few bytes for each supported command, the device expects a fixed number of bytes to be written or read from the device. if for any reason fewer than the expected number of bytes is written to or read from the device, the device completely ignores the command and takes no action. host sends too many bytes or bits for each supported command, the device expects a fixed number of bytes to be written to the device. if for any reason more than the expected number of bytes or bits is written to the device, the device does the following: 1) ignores the command. 2) sets the cml bit in status_byte. 3) sets the cml bit in status_word. 4) sets the data_fault bit in status_cml. 5) notifies the host through alert assertion (if enabled). host reads too many bytes or bits for each supported command, the device expects a fixed number of bytes to be read from the device. if for any reason more than the expected number of bytes or bits is read from the device, the device does the following: 1) sends all ones (ffh) as long as the host keeps acknowledging. 2) sets the cml bit in status_byte. 3) sets the cml bit in status_word. 4) sets the data_fault bit in status_cml. 5) notifies the host through alert assertion (if enabled). host sends improperly set read bit in the slave address byte if the device receives the r/ w bit in the slave address set to one immediately preceding the command code, the device does the following (note this does not apply to ara): 1) acks the address byte. 2) sends all ones (ffh) as long as the host keeps acknowledging. 3) sets the cml bit in status_byte. 4) sets the cml bit in status_word. 5) sets the data_fault bit in status_cml. 6) notifies the host through alert assertion (if enabled). unsupported command code received if the host sends the device a command code that it does not support, or if the host sends a command code that is not supported by the current page setting, the device does the following: 1) ignores the command. 2) sets the cml bit in status_byte. 3) sets the cml bit in status_word. 4) sets the comm_fault bit in status_cml. 5) notifies the host through alert assertion (if enabled). invalid data received the device checks the page and write_protect command codes for valid data. if the host writes a data value that is invalid, the device does the following: 1) ignores the command. 2) sets the cml bit in status_byte. 3) sets the cml bit in status_word. 4) sets the data_fault bit in status_cml. 5) notifies the host through alert assertion (if enabled). alert response address (ara) byte format 1 7 1 1 8 1 1 s ara 0001100 r a device slave address with lsb = 0 na p
6-channel intelligent fan controller MAX31785 19 host reads from a write-only command when a read request is issued to a write-only command (clear_faults, store_default_all, restore_default_all), the device does the following: 1) acks the address byte. 2) ignores the command. 3) sends all ones (ffh) as long as the host keeps acknowledging. 4) sets the cml bit in status_byte. 5) sets the cml bit in status_word. 6) sets the data_fault bit in status_cml. 7) notifies the host through alert assertion (if enabled). host writes to a read-only command when a write request is issued to a read-only command, the device does the following: 1) ignores the command. 2) sets the cml bit in status_byte. 3) sets the cml bit in status_word. 4) sets the comm_fault bit in status_cml. 5) notifies the host through alert assertion (if enabled). smbus timeout if during an active smbus communication sequence the scl signal is held low for greater than the timeout duration (t to ), the device terminates the sequence and resets the serial bus. it takes no other action. no status bits are set. pmbus operation from a software perspective, the device appears as a pmbus device capable of executing a subset of pmbus commands. a pmbus 1.1-compliant device uses the smbus version 1.1 for transport protocol and responds to the smbus slave address. in this data sheet, the term smbus is used to refer to the electrical characteristics of the pmbus communication using the smbus physi - cal layer. the term pmbus is used to refer to the pmbus command protocol. the device employs a number of standard smbus protocols to program output voltage and warning/faults thresholds, read monitored data, and provide access to all manufacturer-specific commands. the device supports the group command. the group command is used to send commands to more than one pmbus device. it is not required that all the devices receive the same command. however, no more than one command can be sent to any one device in one group command packet. the group command must not be used with commands that require receiving devices to respond with data, such as the status_byte com - mand. when the device receives a command through this protocol, it immediately begins execution of the received command after detecting the stop condition. the device supports the page command and uses it to select which individual channel to access. when a data word is transmitted, the lower order byte is sent first and the higher order byte is sent last. within any byte, the most significant bit (msb) is sent first and the least sig - nificant bit (lsb) is sent last. pmbus protocol support the device supports a subset of the commands defined in the pmbus? power system management protocol specification part ii - command language, revision 1.1 . for detailed specifications and the complete list of pmbus commands, refer to part ii of the pmbus spec - ification available at www.pmbus.org. the support - ed pmbus commands and the corresponding device behavior are described in this document. all data values are represented in direct format, unless otherwise stated. whenever the pmbus specification refers to the pmbus device, it is referring to the MAX31785 operat - ing in conjunction with a fan. while the command can call for turning on or turning off the pmbus device, the MAX31785 always remains on to continue communicat - ing with the pmbus master, and the MAX31785 transfers the command to the fan accordingly. data format voltage data for commanding or reading the output voltage or related parameters (such as the overvolt - age threshold) is presented in direct format. direct format data is a 2-byte, twos complement binary value. direct format data can be used with any command that sends or reads a parametric value. the direct format uses an equation and defined coefficients to calculate the desired values. table 3 shows the coefficients used by the device.
6-channel intelligent fan controller MAX31785 20 interpreting received direct format values the host system uses the following equation to convert the value received from the pmbus devicein this case, the MAX31785into a reading of volts, degrees celsius, or other units as appropriate: x = (1/m) x (y x 10 - r - b) where x is the calculated, real world value in the appro - priate units (v, n c, etc.); m is the slope coefficient; y is the 2-byte, twos complement integer received from the pmbus device; b is the offset; and r is the exponent. sending a direct format value to send a value, the host must use the below equation to solve for y: y = (mx + b) x 10 r where y is the 2-byte, twos complement integer to be sent to the unit; m is the slope coefficient; x is the real world value, in units such as volts, to be converted for transmission; b is the offset; and r is the exponent. the following example demonstrates how the host can send and retrieve values from the device. table 4 shows the coefficients used in the following parameters. if the host received a value of 0d89h on a read_vout command, this is equivalent to: x = (1/1) x (0d89h x 10 -(-0) - 0) = 3465mv = 3.465v all voltage-related parameters of pmbus devices are reported as positive values. it is up to the system to know that a particular output is negative if that is of interest to the system. all output voltage-related commands use 2 data bytes. table 3. pmbus command code coefficients table 4. coefficients for direct format value parameter commands units resolution max m b r voltage vout_ov_fault_limit vout_ov_warn_limit vout_uv_warn_limit vout_uv_fault_limit read_vout mfr_vout_peak mfr_vout_min mv 1 32,767 1 0 0 voltage scaling vout_scale_monitor 1/32,767 1 32,767 0 0 temperature ot_fault_limit ot_warn_limit read_temperature_1 mfr_temperature_peak n c 0.01 327.67 1 0 2 fan speed read_fan_speed_1 fan_command_1 mfr_fan_fault_limit mfr_fan_warn_limit rpm 1 32,767 1 0 0 fan_command_1 mfr_read_fan_pwm mfr_fan_fault_limit mfr_fan_warn_limit mfr_fan_pwm_avg % 0.01 327.67 1 0 2 command code command name m b r 8bh read_vout 1 0 0
6-channel intelligent fan controller MAX31785 21 fault management and reporting for reporting faults/warnings to the host on a real-time basis, the device asserts the open-drain alert pin (if enabled in mfr_mode) and sets the appropriate bit in the various status registers. on recognition of the alert assertion, the host or system manager is expected to poll the i 2 c bus to determine the device asserting alert . the host sends the smbus ara (0001 100). the device acks the smbus ara, transmits its slave address, and deasserts alert . the system controller then communi - cates with pmbus commands to retrieve the fault/warn - ing status information from the device. see the individual command sections for more details. faults and warnings that are latched in the status regis - ters are cleared when any one of the following conditions occurs: ? a clear_faults command is received. ? the rst pin is toggled. ? bias power to the device is removed and then reapplied. the device responds to fault conditions accord - ing to the manufacturer fault response command (mfr_fault_response). this command byte determines how the device should respond to each particular fault. table 5 illustrates the required con - ditions and fault actions for specific parameters. system watchdog timer the device uses an internal watchdog timer that is inter - nally reset every 10ms. in the event that the device is locked up and this watchdog reset does not occur after 500ms, the device automatically resets. after the reset occurs, the device reloads all configuration values that were stored to flash and begins normal operation. after the reset, the device also does the following: 1) sets the none of the above bit in status_byte. 2) sets the none of the above and mfr bits in status_word. 3) sets the watchdog bit in status_mfr_specific. 4) notifies the host through alert assertion (if enabled in mfr_mode). temperature sensor operation the device can monitor up to 11 different temperature sensors. it can monitor up to four remote i 2 c-based temperature sensors plus six remote diodes and its own internal temperature sensor. each of the enabled temper - ature sensors is measured once a second. the remote diode and internal temperature sensors are averaged eight times to reduce the affect of noise. each time the device attempts to read a temperature sensor it checks for faults. for the remote diode, a fault is defined as reading greater than +160 n c or less than -60 n c. for the internal temperature sensor, a fault is defined as reading greater than +130 n c or less than -60 n c. for the i 2 c tem - perature sensors, a fault is defined as a communication access failure. temperature sensor faults are reported by setting the temperature reading to 7fffh. a temperature sensor fault results in the setting of the temperature bit in status_byte and status_word and alert is asserted (if enabled in mfr_mode). no bits are set in status_mfr_specific. the temperatures do not have to be used to control the fan speed. they can be enabled and used for tempera - ture monitoring only. reading disabled temperature sen - sors returns a fixed value of 0000h. the remote diode temperature sensor can support either npn or pnp transistors. the device automatically cancels the series resistance that can affect remote diodes that are located far from the device. the device can control up to four ds75lv digital temper - ature sensors. the a0, a1, and a2 pins on the ds75lv should be configured as shown in table 6. the thermo - stat function on the ds75lv is not used and thus the o.s. output should be left open circuit. table 5. device parametric monitoring states table 6. ds75lv address pin configurations parameter required conditions for active monitoring action during a fault overvoltage voltage monitoring enabled (adc_enable in mfr_mode = 1) continue monitoring undervoltage voltage monitoring enabled (adc_enable in mfr_mode = 1) continue monitoring overtemperature temp sensor enabled (enable in mfr_temp_sensor_config = 1) continue monitoring fan speed fan enabled (bit 7 in fan_config_1_2 = 1) continue monitoring page MAX31785 i 2 c temp sensor ds75lv address pin configuration a2 a1 a0 7 temp sensor i 2 c 0 0 0 0 8 temp sensor i 2 c 1 0 0 1 9 temp sensor i 2 c 2 0 1 0 10 temp sensor i 2 c 3 0 1 1
6-channel intelligent fan controller MAX31785 22 fan control operation fan control has four operational modes. the mode is determined by the combination of fan_command_1 and bit 6 of fan_config_1_2 (see table 7). fan control can be disabled by setting bit 7 in fan_config_1_2 to zero. dual fan applications in dual fan applications operating in rpm mode, the tachometer selected when tachsel = 0 is close- loop-controlled to the target rpm. once pwm ramp - ing is complete, tachsel toggles between the two tachometers every 500ms for monitoring purposes. the slower of the two tachometer signals is reported by read_fan_speed_1 and is used as a comparison for fan faults and warning. if one of the two tachometer sig - nals operate at a slower speed, it is recommended that the slower tachometer be presented to the tach input when tachsel = 0. if more than one fan channel is configured for dual fan operation, these fans must com - plete ramping to the target fan speed before the device begins to toggle the tachsel output and monitor both tachometers. automatic fan control operation in the automatic mode, the fan is controlled in a closed loop based on the controlling temperature (the highest postnormalized temperature reading) and the associ - ated fan control pwm duty cycle (in %) or fan speed (in rpm). these parameters are assigned in the fan lookup table (lut). see the mfr_fan_lut description for configuration details. when a controlling temperature exceeds the temperature level programmed in the lut, the device outputs a pwm duty cycle or adjusts the fan speed associated with that temperature. see figure 1 for an example. one or all of the 11 available temperature sensors can be used to control the fan speed. each temperature sensor has an offset adjustment that allows monitoring specific temperature zones with different thermal char - acteristics. in figure 1, remote diode temperature sensor 0 is monitoring a zone that is 15 n c more sensitive than the zone that the i 2 c temperature sensor 3 is measuring. to keep the audible noise and fan power consumption as low as possible, the device allows each temperature sensor to have a temperature offset added. this allows temperature zones with different thermal profiles to con - trol the fan at the lowest possible speed to maintain the required temperature. if no temperature sensors are assigned to control the fan, the output fan pwm signal is ramped to 100% duty cycle. in figure 2, at temperature sample 1, the required fan speed is at the level associated with temperature level 2 and since temperature sample 1 is above temperature level 3, the fan pwm duty cycle needs to be increased to increase the fan speed. the device increases the fan pwm duty cycle at a rate controlled by the ramp bits in the mfr_fan_config command code. if the pwm duty cycle has not reached the target value before the tem - perature sample detects that a new pwm target value is needed, the device stops moving toward the old target and starts moving to the new target according to the programmed ramp rate. table 7. fan control operation modes note: the rpm modes should only be used with fans that provide a tachometer output. fan control mode fan operational details bit 6 of fan_config_1_2 value in fan_command_1 manual pwm external host controls the fan speed by directly setting the fan pwm duty-cycle values. 0 0000h to 7fffh manual rpm external host controls the fan speed by setting target fan speed values. the device reads the actual fan speed and close loop adjusts the output fan pwm to match the target fan speed. 1 0000h to 7fffh automatic pwm the device sets the output pwm based on the fan lut that maps the temperature sensor readings to the required fan pwm duty-cycle values. 0 8000h to ffffh automatic rpm the device reads the actual fan speed and close loop adjusts the output fan pwm to match the target fan speed based on the fan lut that maps the temperature sensor readings to the required fan speed. 1 8000h to ffffh
6-channel intelligent fan controller MAX31785 23 figure 1. automatic fan control figure 2. fan speed example each fan has a unique 8-level lut highest temperature controls the fan temp sensor to fan mapping offset adjustment allows temperature zone normalization remote diode temp sensor 0 +15c fan 2 fan 5 temp sensor diode 0 fan 0 1 2 3 4 5 remote diode temp sensor 1 +10c temp sensor diode 1 fan 0 1 2 3 4 5 remote diode temp sensor 2 0c temp sensor diode 2 fan 0 1 2 3 4 5 i 2 c remote temp sensor 3 0c temp sensor i 2 c 3 fan 0 1 2 3 4 5 internal temp sensor +5c temp sensor internal fan 0 1 2 3 4 5 t1 t2 t3 t4 t5 t6 t7 sensor temperature thermal hysteresis t0 elapsed time temperature sample rate (once per second) s1 s2 s3 s4 s5 s6 s7 fan speed sample 1 sample 2 sample 3 sample 4 sampled temperatures s0
6-channel intelligent fan controller MAX31785 24 at temperature sample 2, the temperature has increased to greater than temperature level 4 so again the pwm duty cycle must be increased. at temperature sample 3, the temperature has dropped but not below the ther - mal hysteresis level (which is set by the hys bits in the mfr_fan_config command code), so the fan speed remains at level 4. at temperature sample 4, the tem - perature has dropped below the hysteresis point so the pwm duty cycle is decreased. pulse stretching in some 3-wire fan applications, when the supply power is interrupted to control fan speed, the tachometer sig - nal is not available. some fan controllers periodically stretch the pwm signal to allow the tachometer to be accurately detected. pulse stretching can create audible noise. this device does not implement pulse stretch - ing. hence, the rpm fan modes that require a reliable tachometer signal to be available at all times should not be used in applications that switch power to the fan to control the speed of the fan. for example, low-side switching of a 3-wire fan should not use either of the rpm fan modes. fan spin-up figure 3 shows the fan spin-up process. when the fan is spinning up, the number of revolutions is checked every 200ms for up to 2s. when the number of cumulated revo - lutions is greater than or equal to the spin-up relaxation criteria, the fan passes spin-up. if the fan has a locked rotor output, fan spin-up passes when the locked rotor signal is no longer asserted. when spin-up passes, the device forces the fan pwm with a 40% duty cycle. the 40% duty cycle is maintained until the next temperature conversion is completed, which occurs once a second. after the temperature con - version, the device enters either manual mode operation or automatic operation using mfr_fan_lut. figure 3. fan spin-up 100% spin-up criteria met automatic spin-up enabled automatic spin-up disabled always return to 40% duty cycle after automatic spin-up before beginning pwm ramp (even if beyond 1 second) initial target pwm or rpm determined after temperature conversion 90% 80% 70% 60% 50% 40% 30% 20% 10% 0 0.2 0.4 0.6 0.8 time (seconds) 1.0 1.2 1.4 ramp pwm to target pwm or rp m (constrained by the ramp bits )
6-channel intelligent fan controller MAX31785 25 fan power-on sequencing multiple fans are not started at the same time. fans are started in increments of 200ms to relieve the strain on the power supply. this sequencing occurs both at initial fan power-up and when fans are turned off and on during normal operation. fan health-meter function the device has a fan-health-diagnostic function to help predict the remaining life of the fan. this function com - pares the measured vs. expected fan speed for the applied pwm duty cycle to determine if the fan is operat - ing normally. this function is enabled with the health bit (bit 4) in mfr_fan_config. when the fan-health-meter function is enabled, it runs once per second for each enabled fan. if the fans pwm duty cycle has been stable for 30s, the measured rpm is compared to the expect - ed rpm and the correct fan-health-color bit (green, orange, or red) is set in status_fan_1_2. if the duty cycle has been unstable for greater than 10 minutes, the yellow bit is set in status_fans_1_2. the expected fan-speed profile is entered with the mfr_fan_pwm2rpm command. with this command, a table is filled with four preassigned pwm duty cycle (40%, 60%, 80%, and 100%) vs. expected fan-speed values, as shown in figure 4. the comparison of the measured rpm to expected rpm is performed when the figure 4. fan pwm to rpm example expected fan speed in rpm expected fan pwm to speed profile 20 40 60 80 pwm duty cycle (%) 100 rpm@100% pwm rpm@60% pwm rpm@60% pwm rpm@40% pwm n o c o l o r n o c o l o r n o c o l o r n o c o l o r re d re d r ed o ra ng e or a ng e g re en g reen re d orange o ra n g e gr ee n gr ee n red red orange orange green green
6-channel intelligent fan controller MAX31785 26 table 8. fan health conditions fans pwm duty cycle is between 40% and 80%. the masured fan speed is also compared to the expected at 100% duty cycle. in the 40% to 80% range, a fans expected fan-speed profile is approximately linear. at duty cycles outside this range (with the exception of 100%), the shape of the expected fan-speed profile varies too much between fans, and it is not possible to predict an expected speed. a fan-health-color bit in status_fans_1_2 is set based upon the difference between the measured and expect - ed fan speed and the fan_health_criteria bits in mfr_mode, as shown in table 8. if the fan pwm duty cycle is less than 40% or between 80% and 100%, a fan-health color cannot be assigned and all the color bits are cleared. if the fan is unstable, the yellow color bit is set. lower nibble of status_fan_1_2 fan_health_criteria bits in mfr_mode monitored fan speed vs. expected target green 00 within 10% 01 within 10% 10 within 15% 11 within 15% yellow fan speed is not stable orange 00 between 10% and 15% 01 between 10% and 20% 10 between 15% and 20% 11 between 15% and 25% red 00 over 15% 01 over 20% 10 over 20% 11 over 25%
6-channel intelligent fan controller MAX31785 27 pmbus commands a summary of the pmbus commands supported by the device are described in the following sections. page (00h) the device can control up to six fans, up to 11 temperature sensors, and measure up to six remote voltages using one pmbus (i 2 c) address. send the page command with data 0 to 22 to select which fan, temperature sensor, or remote voltage fan is affected by all the pmbus commands shown in table 1. not all commands are supported within each page. if an unsupported command is received, the cml status bit is set. some commands are common, meaning that any selected page has the same effect on and the same response from the device. set the page to 255 when it is desired that the following pmbus commands should apply to all pages at the same time. table 9. page commands page (dec) associated control 0 fan connected to pwm 0 1 fan connected to pwm 1 2 fan connected to pwm 2 3 fan connected to pwm 3 4 fan connected to pwm 4 5 fan connected to pwm 5 6 remote thermal diode connected to adc 0 7 remote thermal diode connected to adc 1 8 remote thermal diode connected to adc 2 9 remote thermal diode connected to adc 3 10 remote thermal diode connected to adc 4 11 remote thermal diode connected to adc 5 12 internal temperature sensor 13 remote i 2 c temperature sensor with address 0 14 remote i 2 c temperature sensor with address 1 15 remote i 2 c temperature sensor with address 2 16 remote i 2 c temperature sensor with address 3 17 remote voltage connected to adc 0 18 remote voltage connected to adc 1 19 remote voltage connected to adc 2 20 remote voltage connected to adc 3 21 remote voltage connected to adc 4 22 remote voltage connected to adc 5 23 to 254 reserved 255 applies to all pages
6-channel intelligent fan controller MAX31785 28 clear_faults (03h) the clear_faults command is used to clear any fault or warning bits in the status registers that have been set. this command clears all bits simultaneously. if a fault is still present after the clear_faults command is executed, the fault status bit is set again and the host is also notified by asserting alert (if enabled in mfr_mode). this command is write-only. there is no data byte for this command. write_protect (10h) the write_protect command is used to provide protection against accidental changes to the device operating memory. all supported commands can have their parameters read, regardless of the write_protect settings. the write_protect message content is described in table 10. table 10. write_protect command byte note: no fault or error is generated if the host attempts to write to a protected area. store_default_all (11h) the store_default_all command instructs the device to transfer the device configuration information to the internal flash memory array. not all information is stored. only configuration data is stored, not any status or opera - tional data. if an error occurs during the transfer, alert asserts if enabled and the cml bit in status_byte and status_word is set to 1. no bits are set in status_cml. it is not recommended to use the store_default_all command while the device is operating fans. the device is unresponsive to pmbus commands and does not monitor fans while transferring the configuration. this command is write-only. there is no data byte for this command. user note: v dd must be above 2.9v for the device to perform the store_default_all command. restore_default_all (12h) the restore_default_all command transfers the default configuration information from the internal flash memory array to the user memory registers in the device. the restore_default_all command should only be executed when the device is not operating the fans. upon a device reset, this command is automatically executed by the device without pmbus action required. this command is write-only. there is no data byte for this command. capability (19h) the capability command is used to determine some key capabilities of the device. the capability command is read-only. the message content is described in table 11. table 11. capability command byte command byte meaning 80h disable all writes except the write_protect command. 40h disable all writes except the write_protect and page commands. 00h enable writes for all commands (default). bit description meaning 7 packet-error checking 0 = pec not supported. 6:5 pmbus speed 00 = maximum supported bus speed is 100khz. 4 alert 1 = device supports an alert output (if alert is enabled in mfr_mode). 0 = device does not support alert output (alert is disabled in mfr_mode). 3:0 reserved always returns 0000.
6-channel intelligent fan controller MAX31785 29 vout_mode (20h) the vout_mode command is used to report the data format of the device. the device uses the direct format for all the voltage-related commands. the value returned is 40h, indicating direct data format. this command is read-only. if a host attempts to write this command, the cml status bit is asserted. see table 3 for the m, b, and r values for the various commands. vout_scale_monitor (2ah) vout_scale_monitor is used in applications where the measured remote voltage is not equal to the voltage at the adc input. for example, if the adc input expects a 1.0v input for a 12v output, vout_scale_monitor = 1.0v/12v = 0.0833. in applications where the remote voltage is greater than the device input range, the voltage of the remote supply is sensed through a resistive voltage-divider. the resistive voltage-divider reduces or scales the remote voltage. the pmbus commands specify the actual remote voltages and not the input voltage to the adc. to allow the device to map between the remote voltage (such as 12v) and the voltage at the adc input, the vout_scale_monitor com - mand is used. the 2 data bytes are in direct format. this value is dimensionless. for example, if the required scaling factor is 0.0833, then vout_scale_monitor should be set to 0aabh (2731/32,767 = 0.0833). table 12. vout_scale_monitor user note: on the device, the full-scale adc voltage is 1.225v. the scaling factor where a 1.0v adc input represents a nominal 100% voltage level is recommended. fan_config_1_2 (3ah) the fan_config_1_2 command is used in conjunction with mfr_fan_config to configure the fan. see the mfr_fan_config (f1h) section for more details on this command. the fan_config_1_2 command is described in table 13. table 13. fan_config_1_2 command byte nominal voltage level monitored (v) nominal adc input voltage level (v) (see note) resistive voltage- divider ratio vout_scale_monitor value (hex) 1.2 1.0 0.833 6aaah 1.5 1.0 0.667 5555h 1.8 1.0 0.555 470ah 2.5 1.0 0.4 3333h 3.3 1.0 0.303 26c8h 5 1.0 0.2 1999h 12 1.0 0.0833 0aabh bit name meaning 7 fan enable 0 = fan disabled (pwm forced low). 1 = fan enabled. 6 rpm/pwm 0 = pwm duty cycle is the fan-controlling parameter. 1 = rpm is the fan-controlling parameter. 5:4 pulse 00 = 1 tach pulse per fan revolution. 01 = 2 tach pulses per fan revolution. 10 = 3 tach pulses per fan revolution. 11 = 4 tach pulses per fan revolution. 3:0 0 these bits always return a 0.
6-channel intelligent fan controller MAX31785 30 fan_command_1 (3bh) the fan_command_1 command is used to override the devices automatic fan-control function and force the fan to either a fixed pwm duty-cycle value or a target fan speed (in rpm). the units of fan_command_1 are either percent duty cycle (if bit 6 of fan_config_1_2 is zero) or rpm (if bit 6 of fan_config_1_2 is one). any value less than 0% duty cycle or 0 rpm causes the device to ignore this command and use the automatic fan-control function. any value greater than or equal to 0% duty cycle or 0 rpm causes the device to ignore the automatic fan-control function and force the fan to the pwm value or rpm value provided by the fan_command_1 command. the 2 data bytes are in direct format. table 14. pwm fan mode (fan_config_1_2 bit 6 = 0) table 15. rpm fan mode (fan_config_1_2 bit 6 = 1) vout_ov_fault_limit (40h) the vout_ov_fault_limit command sets the value of the output voltage that causes an output overvoltage fault. the monitored voltage must drop by at least 2% below the limit before the fault is allowed to clear. the 2 data bytes are in direct format. in response to the vout_ov_fault_limit being exceeded, the device does the following: 1) sets the vout_ov bit in status_byte. 2) sets the vout_ov and vout bits in status_word. 3) sets the vout_ov_fault bit in status_vout. 4) responds as specified in the mfr_fault_response. 5) notifies the host through alert assertion (if enabled in mfr_mode). vout_ov_warn_limit (42h) the vout_ov_warn_limit command sets the value of the output voltage that causes an output-voltage high warn - ing. this value is typically less than the output overvoltage threshold in vout_ov_fault_limit. the monitored volt - age must drop by at least 2% below the limit before the warning is allowed to clear. the 2 data bytes are in direct format. in response to the vout_ov_warn_limit being exceeded, the device does the following: 1) sets the none of the above bit in status_byte. 2) sets the none of the above and vout bits in status_word. 3) sets the vout_ov_warn bit in status_vout. 4) notifies the host using alert assertion (if enabled in mfr_mode). fan_command_1 value device response 8000h to ffffh ignore fan_command_1 and use automatic fan-control function 0000h to 2710h 0 to 100% fan pwm duty cycle 2711h to 7fffh 100% fan pwm duty cycle fan_command_1 value device response 8000h to ffffh ignore fan_command_1 and use automatic fan-control function 0000h to 7fffh 0 to 32,767 rpm
6-channel intelligent fan controller MAX31785 31 vout_uv_warn_limit (43h) the vout_uv_warn_limit command sets the value of the output voltage that causes an output-voltage low warning. this value is typically greater than the output undervoltage fault threshold in vout_uv_fault_limit. the monitored voltage must increase by at least 2% above the limit before the warning is allowed to clear. the 2 data bytes are in direct format. in response to violation of the vout_uv_warn_limit, the device does the following: 1) sets the none of the above bit in status_byte. 2) sets the none of the above and vout bits in status_word. 3) sets the vout_uv_warn bit in status_vout. 4) notifies the host using alert assertion (if enabled in mfr_mode). vout_uv_fault_limit (44h) the vout_uv_fault_limit command sets the value of the output voltage that causes an output undervoltage fault. the monitored voltage must increase by at least 2% above the limit before the fault is allowed to clear. the 2 data bytes are in direct format. in response to violation of the vout_uv_fault_limit, the device does the following: 1) sets the none of the above bit in status_byte. 2) sets the none of the above and vout bits in status_word. 3) sets the vout_uv_fault bit in status_vout. 4) responds as specified in mfr_fault_response. 5) notifies the host using alert assertion (if enabled in mfr_mode). ot_fault_limit (4fh) the ot_fault_limit command sets the temperature, in degrees celsius, of the selected temperature sensor at which an overtemperature fault is detected. the monitored temperature must drop by at least 4c below the limit before the fault is allowed to clear. the 2 data bytes are in direct format. in response to the ot_fault_limit being exceeded, the device does the following: 1) sets the temperature bit in status_byte. 2) sets the temperature and mfr bits in status_word. 3) sets the ot_fault bit in status_mfr_specific. 4) responds as specified in mfr_fault_response. 5) notifies the host using alert assertion (if enabled in mfr_mode). ot_warn_limit (51h) the ot_warn_limit command sets the temperature, in degrees celsius, of the selected temperature sensor at which an overtemperature warning is detected. the monitored temperature must drop by at least 4c below the limit before the warning is allowed to clear. the 2 data bytes are in direct format. in response to the ot_warn_limit being exceeded, the device does the following: 1) sets the temperature bit in status_byte. 2) sets the temperature and mfr bits in status_word. 3) sets the ot_warn bit in status_mfr_specific. 4) notifies the host through alert assertion (if enabled in mfr_mode).
6-channel intelligent fan controller MAX31785 32 status_byte (78h) the status_byte command returns 1 byte of information with a summary of the most critical faults. a value of 1 indi - cates that a fault or warning event has occurred and a 0 indicates otherwise. bits for unsupported features are reported as 0. the status_byte cannot be restored by the restore_default_all command. the status_byte message content is described in table 16. this command is read-only. status_word (79h) the status_word command returns 2 bytes of information with a summary of the reason for a fault. the low byte of the status_word is the same data as the status_byte. table 17 describes the status_word message content. status_vout (7ah) the status_vout command returns 1 byte of information with contents as described in table 18. table 16. status_byte table 17. status_word table 18. status_vout bit bit name meaning 7:6 0 these bits always return a 0. 5 vout_ov an overvoltage fault has occurred. 4:3 0 these bits always return a 0. 2 temperature a temperature fault or warning has occurred. 1 cml a communication, memory, or logic fault has occurred. 0 none of the above a fault or warning not listed in bits [7:1] has occurred. bit bit name meaning 15 vout an output voltage fault or warning has occurred. 14:13 0 these bits always return a 0. 12 mfr a bit in status_mfr_specific has been set. 11 0 this bit always returns a 0. 10 fans a fan fault or warning has occurred. 9:6 0 these bits always return a 0. 5 vout_ov an overvoltage fault has occurred. 4:3 0 these bits always return a 0. 2 temperature a temperature fault or warning has occurred. 1 cml a communication, memory, or logic fault has occurred. 0 none of the above a fault or warning not listed in bits [7:1] has occurred. bit bit name meaning 7 vout_ov_fault vout overvoltage fault. 6 vout_ov_warn vout overvoltage warning. 5 vout_uv_warn vout undervoltage warning. 4 vout_uv_fault vout undervoltage fault. 3:0 0 these bits always return a 0.
6-channel intelligent fan controller MAX31785 33 status_cml (7eh) the status_cml command returns 1 byte of information with contents as described in table 19. status_mfr_specific (80h) the status_mfr_specific command returns 1 byte of information with a summary of the reason for a fault. the status_mfr_specific message content is described in table 20. status_fans_1_2 (81h) the status_fans_1_2 command returns 1 byte of information with the status of the fan. the status_fans_1_2 command is described in table 21. table 19. status_cml table 20. status_mfr_specific note: the settings of the red, orange, yellow, and green bits does not assert the alert signal. table 21. status_fans_1_2 bit bit name meaning 7 comm_fault an invalid or unsupported command has been received. 6 data_fault an invalid or unsupported data has been received. 5:1 0 these bits always return a 0. 0 fault_log_full mfr_nv_fault_log is full and needs to be cleared. bit bit name meaning 7 0 this bit always returns a 0. 6 ot_warn overtemperature warning. 5 ot_fault overtemperature fault. 4 watchdog a watchdog reset has occurred. 3:0 0 these bits always return a 0. bit bit name meaning 7 fan_1_fault fan 1 fault. 6 0 this bit always returns a 0. 5 fan_1_warn fan 1 warning. 4 0 this bit always returns a 0. 3 red the lower nibble reports the estimated health of the fan. only one of the four bits is set at any one time. if no bits are set, the fan health cannot be estimated. red is the worst health state and green is the best health state. the clear_faults command does not affect these bits. 2 orange 1 yellow 0 green
6-channel intelligent fan controller MAX31785 34 read_vout (8bh) the read_vout command returns the actual measured output voltage. read_vout is measured and updated every 10ms. the 2 data bytes are in direct format. read_temperature_1 (8dh) the read_temperature_1 command returns the temperature returned from the temperature sensor. the value of read_temperature_1 does not have offset from mfr_temp_sensor_config added. read_temperature_1 returns 7fffh if the sensor is faulty and 0000h if the sensor is disabled. read_temperature_1 is measured and updated once a second. the 2 data bytes are in direct format. read_fan_speed_1 (90h) the read_fan_speed_1 command returns the fan speed in rpm. read_fan_speed_1 is updated once a second, even if the fan is disabled. the pulse bits in fan_config_1_2 must be properly configured to receive the correct fan speed. fan speeds below 60 rpm (360 rpm for dual mode fans) are reported as 0 rpm. the 2 data bytes are in direct format. pmbus_revision (98h) the pmbus_revision command returns the revision of the pmbus specification to which the device is compliant. the command has 1 data byte. bits [7:4] indicate the revision of pmbus specification part i to which the device is compli - ant. bits [3:0] indicate the revision of pmbus specification part ii to which the device is compliant. this command is read-only. the pmbus_revision value returned is always 11h, which indicates that it is compliant with part i rev 1.1 and part ii rev 1.1. mfr_id (99h) the mfr_id command returns the text (iso/iec 8859-1) character of the manufacturers (maxim) identification. the default mfr_id value is 4dh (m). this command is read-only. mfr_model (9ah) the mfr_model command returns the text (iso/iec 8859-1) character of the device model number. the default mfr_model value is 53h (s). this command is read-only. mfr_revision (9bh) the mfr_revision command returns two text (iso/iec 8859-1) characters that contain the device revision numbers for hardware (upper byte) and firmware (lower byte). the default mfr_revision value is 3030h (00). this command is read-only. mfr_location (9ch) the mfr_location command loads the device with text (iso/iec 8859-1) characters that identify the facility that manufactures the equipment. the maximum number of characters is 8. this data is written to internal flash using the store_default_all command. the factory default text string value is 10101010. mfr_date (9dh) the mfr_date command loads the device with text (iso/iec 8859-1) characters that identify the date of manu - facture of the equipment. the maximum number of characters is 8. this data is written to internal flash using the store_default_all command. the factory default text string value is 10101010. mfr_serial (9eh) the mfr_serial command loads the device with text (iso/iec 8859-1) characters that uniquely identify the equipment. the maximum number of characters is 8. this data is written to internal flash using the store_default_all com - mand. the factory default text string value is 10101010.
6-channel intelligent fan controller MAX31785 35 mfr_mode (d1h) the mfr_mode command is used to configure the device to support manufacturer specific commands. the mfr_mode command is described in table 22. table 22. mfr_mode bit bit name meaning 15 force_nv_fault_log setting this bit to 1 forces the device to log data into the nonvolatile fault log. once set, the device clears this bit when the action is completed. the host must set again for subsequent action. if an error occurs during this action, the device sets the cml bit in status_byte and status_word; no bits are set in status_cml. 14 clear_nv_fault_log setting this bit to 1 forces the device to clear the nonvolatile fault log by writing ffh to all byte locations. once set, the device clears this bit when the action is completed. the host must set again for subsequent action. if an error occurs during this action, the device sets the cml bit in status_byte and status_word; no bits are set in status_cml. 13 alert 0 = alert disabled (device does not respond to ara). 1 = alert enabled (device responds to ara and ara must be used). 12 0 this bit always returns a 0. 11 soft_reset this bit must be set, then cleared and set again within 8ms for a soft reset to occur. 10:8 0 these bits always return a 0. 7:6 fan_health_criteria these bits select the threshold for the expected rpm in the fan health monitor. bit green orange red 0 0 < 10% < 15% > 15% 0 1 < 10% < 20% > 20% 1 0 < 15% < 20% > 20% 1 1 < 15% < 25% > 25% 5 adc5_enable 0 = adc5 voltage sense disabled. 1 = adc5 voltage sense enabled (overridden if temp sense enabled) 4 adc4_enable 0 = adc4 voltage sense disabled. 1 = adc4 voltage sense enabled (overridden if temp sense enabled) 3 adc3_enable 0 = adc3 voltage sense disabled. 1 = adc3 voltage sense enabled (overridden if temp sense enabled) 2 adc2_enable 0 = adc2 voltage sense disabled. 1 = adc2 voltage sense enabled (overridden if temp sense enabled) 1 adc1_enable 0 = adc1 voltage sense disabled. 1 = adc1 voltage sense enabled (overridden if temp sense enabled) 0 adc0_enable 0 = adc0 voltage sense disabled. 1 = adc0 voltage sense enabled (overridden if temp sense enabled)
6-channel intelligent fan controller MAX31785 36 mfr_vout_peak (d4h) the mfr_vout_peak command returns the maximum actual measured output voltage. to reset this value to 0, write to this command with a data value of 0. any values written to this command are used as a comparison for future peak updates. the 2 data bytes are in direct format. mfr_temperature_peak (d6h) the mfr_temperature_peak command returns the maximum measured temperature. to reset this value to its low - est value, write to this command with a data value of 8000h. any other values written by this command are used as a comparison for future peak updates. the 2 data bytes are in direct format. mfr_vout_min (d7h) the mfr_vout_min command returns the minimum actual measured output voltage. to reset this value, write to this com - mand with a data value of 7fffh. any values written to this command are used as a comparison for future minimum updates. the 2 data bytes are in direct format. mfr_fault_response (d9h) the mfr_fault_response command specifies the response to each fault condition supported by the device. in response to a fault, the device always report the fault in the appropriate status register and asserts the alert output (if enabled in mfr_mode). a cml fault cannot cause any device action other than setting the status bit and asserting the alert output. the mfr_fault_response command is described in table 23. table 23. mfr_fault_response note 1: for fault responses, a fault is defined as either a fan fault, an overtemperature fault, or an undervoltage fault. bits 2 and 6 allow the addition of an overvoltage fault to the fault definition. note 2: if fault_pin_monitor = 1, the device reacts to both internal and external assertions of the fault pin. bit bit name meaning 7 nv_log 0 = do not log the fault into mfr_nv_fault_log. 1 = log the fault into mfr_nv_fault_log. 6 nv_log_ov this bit is only valid for pages 17 to 22. other pages always return a 0. 0 = bit 7 is ignored for overvoltage faults. 1 = bit 7 also applies to overvoltage faults. 5 uv_ov_filter this bit is only valid for pages 17 to 22. other pages always return a 0. 0 = fault or warning on first voltage sample excursion occurrence. 1 = requires two consecutive voltage sample excursions before a fault or warning is declared and action taken. 4:3 0 these bits always return a 0. 2 fault_pin_enable_ov this bit is only valid for pages 17 to 22. other pages always return a 0. 0 = bit 1 is ignored for overvoltage faults. 1 = bit 1 also applies to overvoltage faults. 1 fault_pin_enable 0 = never assert the fault pin. 1 = assert the fault pin during an active fault. 0 fault_pin_monitor this bit is only valid for pages 0 to 5. other pages always return a 0. 0 = ignore the fault pin. 1 = force fan to 100% pwm duty cycle when the fault pin is asserted.
6-channel intelligent fan controller MAX31785 37 mfr_nv_fault_log (dch) each time the mfr_nv_fault_log command is executed, the device returns a block of 255 bytes containing one of the 15 nonvolatile fault logs. the mfr_nv_fault_log command must be executed 15 times to dump the com - plete nonvolatile fault log. if the returned fault log is all ffs, this indicates that this fault log has not been written by the device. as the device is operating, it is reading the latest operating conditions for fan speed, voltage, and temperature, and it is updating the status registers. all this information is stored in on-board ram. when a fault is detected (if so enabled in mfr_fault_response), the device automatically logs this information to one of the 15 nonvolatile fault logs. after 15 faults have been written, bit 0 of status_cml is set and the host must clear the fault log by setting the clear_nv_fault_log bit in mfr_mode before any additional faults are logged. all the latest status information is logged as well as eight readings of voltage from the last 800ms in 100ms increments. if a fan is not enabled or if volt - age or a temperature sensor is disabled, the associated fault log position returns 0000h. there is a fault_log_count (16-bit counter) at the beginning of each fault log that indicates which fault log is the latest. this counter rolls over should more than 65,535 faults be logged. this counter is not cleared when the clear_nv_fault_log bit in mfr_mode is toggled. the 255 bytes returned by the mfr_nv_fault_log com - mand are described in table 24. if an error occurs while the device is attempting to write or clear the nv_fault_log, the device sets the cml bit in status_byte and status_word; no bits are set in status_cml. alert is asserted (if enabled in mfr_mode). see figure 5. user note: v dd must be above 2.9v for the device to clear or log data into mfr_nv_fault_log. figure 5. mfr_nv_fault_log fault log index 0 (255 bytes) fault log index 1 (255 bytes) fault log index 2 (255 bytes) status voltage temperature fan speed ram flash each fault is written into the next fault log each command read accesses the next fault log fault occurence fault log index 14 (255 bytes) mfr_nv_fault_log
6-channel intelligent fan controller MAX31785 38 table 24. mfr_nv_fault_log byte parameter byte parameter 0 00h/fault_log_index 128 read_vout index = 3, page 19 2 fault_log_count 130 read_vout index = 3, page 20 4 mfr_time_count (lsw) 132 read_vout index = 3, page 21 6 mfr_time_count (msw) 134 read_vout index = 3, page 22 8 status_byte/status_cml 136 read_vout index = 4, page 17 10 status_word 138 read_vout index = 4, page 18 12 status_vout pages 17/18 140 read_vout index = 4, page 19 14 status_vout pages 19/20 142 read_vout index = 4, page 20 16 status_vout pages 21/22 144 read_vout index = 4, page 21 18 status_mfr_specific pages 6/7 146 read_vout index = 4, page 22 20 status_mfr_specific pages 8/9 148 read_vout index = 5, page 17 22 status_mfr_specific pages 10/11 150 read_vout index = 5, page 18 24 status_mfr_specific pages 12/13 152 read_vout index = 5, page 19 26 status_mfr_specific pages 14/15 154 read_vout index = 5, page 20 28 status_mfr_specific pages 16/00h 156 read_vout index = 5, page 21 30 status_fans_1_2 pages 0/1 158 read_vout index = 5, page 22 32 status_fans_1_2 pages 2/3 160 read_vout index = 6, page 17 34 status_fans_1_2 pages 4/5 162 read_vout index = 6, page 18 36 mfr_vout_peak page 17 164 read_vout index = 6, page 19 38 mfr_vout_peak page 18 166 read_vout index = 6, page 20 40 mfr_vout_peak page 19 168 read_vout index = 6, page 21 42 mfr_vout_peak page 20 170 read_vout index = 6, page 22 44 mfr_vout_peak page 21 172 read_vout index = 7, page 17 46 mfr_vout_peak page 22 174 read_vout index = 7, page 18 48 mfr_temperature_peak page 6 176 read_vout index = 7, page 19 50 mfr_temperature_peak page 7 178 read_vout index = 7, page 20 52 mfr_temperature_peak page 8 180 read_vout index = 7, page 21 54 mfr_temperature_peak page 9 182 read_vout index = 7, page 22 56 mfr_temperature_peak page 10 184 read_fan_speed_1 page 0 58 mfr_temperature_peak page 11 186 read_fan_speed_1 page 1 60 mfr_temperature_peak page 12 188 read_fan_speed_1 page 2 62 mfr_temperature_peak page 13 190 read_fan_speed_1 page 3 64 mfr_temperature_peak page 14 192 read_fan_speed_1 page 4 66 mfr_temperature_peak page 15 194 read_fan_speed_1 page 5 68 mfr_temperature_peak page 16 196 mfr_read_fan_pwm page 0 70 mfr_vout_min page 17 198 mfr_read_fan_pwm page 1 72 mfr_vout_min page 18 200 mfr_read_fan_pwm page 2 74 mfr_vout_min page 19 202 mfr_read_fan_pwm page 3 76 mfr_vout_min page 20 204 mfr_read_fan_pwm page 4 78 mfr_vout_min page 21 206 mfr_read_fan_pwm page 5 80 mfr_vout_min page 22 208 mfr_fan_run_time page 0 82 reserved (0000h) 210 mfr_fan_run_time page 1
6-channel intelligent fan controller MAX31785 39 table 24. mfr_nv_fault_log (continued) note: log_valid is set to ddh if the fault log contains valid data. byte parameter byte parameter 84 reserved (0000h) 212 mfr_fan_run_time page 2 86 voltage_index/00h 214 mfr_fan_run_time page 3 88 read_vout index = 0, page 17 216 mfr_fan_run_time page 4 90 read_vout index = 0, page 18 218 mfr_fan_run_time page 5 92 read_vout index = 0, page 19 220 mfr_fan_pwm_avg page 0 94 read_vout index = 0, page 20 222 mfr_fan_pwm_avg page 1 96 read_vout index = 0, page 21 224 mfr_fan_pwm_avg page 2 98 read_vout index = 0, page 22 226 mfr_fan_pwm_avg page 3 100 read_vout index = 1, page 17 228 mfr_fan_pwm_avg page 4 102 read_vout index = 1, page 18 230 mfr_fan_pwm_avg page 5 104 read_vout index = 1, page 19 232 read_temperature_1 page 6 106 read_vout index = 1, page 20 234 read_temperature_1 page 7 108 read_vout index = 1, page 21 236 read_temperature_1 page 8 110 read_vout index = 1, page 22 238 read_temperature_1 page 9 112 read_vout index = 2, page 17 240 read_temperature_1 page 10 114 read_vout index = 2, page 18 242 read_temperature_1 page 11 116 read_vout index = 2, page 19 244 read_temperature_1 page 12 118 read_vout index = 2, page 20 246 read_temperature_1 page 13 120 read_vout index = 2, page 21 248 read_temperature_1 page 14 122 read_vout index = 2, page 22 250 read_temperature_1 page 15 124 read_vout index = 3, page 17 252 read_temperature_1 page 16 126 read_vout index = 3, page 18 254 log_valid (see note)
6-channel intelligent fan controller MAX31785 40 mfr_time_count (ddh) the mfr_time_count command returns the number of seconds of device lifetime operation. once every hour, the device automatically stores this counter in flash memory. the counter is a 32-bit value that rolls over. the latest stored value is automatically recalled from flash memory upon device power cycle, rst action, or a soft reset. this count can be reset to zero by writing a sequence of all zeros (00000000h), followed by all ones (ffffffffh), followed by all zeros (00000000h) within 8ms. mfr_temp_sensor_config (f0h) the mfr_temp_sensor_config command is used to configure the temperature sensors. table 25 describes the mfr_temp_sensor_config command. table 25. mfr_temp_sensor_config bit bit name meaning 15 enable 0 = temperature sensor disabled. 1 = temperature sensor enabled. 14:10 offset the offset setting is used to allow the temperature reading to be normalized among multiple temperature sensors. values from 00h to 1eh select the offset value. the valid range is 0 n c to +30 n c in 1 n c steps. if offset is 1fh, the device automatically uses the value written to the ot_warn_limit command code for the lut instead of the digitized measured temperature. offset value configuration 00h offset = 0 n c 01h offset = +1 n c 02h offset = +2 n c 1dh offset = +29 n c 1eh offset = +30 n c 1fh test mode 9:6 0 these bits always return a 0. 5 fan5 0 = temperature sensor is not used to control fan 5 speed. 1 = temperature sensor is used to control fan 5 speed. 4 fan4 0 = temperature sensor is not used to control fan 4 speed. 1 = temperature sensor is used to control fan 4 speed. 3 fan3 0 = temperature sensor is not used to control fan 3 speed. 1 = temperature sensor is used to control fan 3 speed. 2 fan2 0 = temperature sensor is not used to control fan 2 speed. 1 = temperature sensor is used to control fan 2 speed. 1 fan1 0 = temperature sensor is not used to control fan 1 speed. 1 = temperature sensor is used to control fan 1 speed. 0 fan0 0 = temperature sensor is not used to control fan 0 speed. 1 = temperature sensor is used to control fan 0 speed.
6-channel intelligent fan controller MAX31785 41 mfr_fan_config (f1h) the mfr_fan_config command is used with fan_config_1_2 to configure the fan. see the fan_config_1_2 description for more details on this command. table 26 describes the mfr_fan_config command. table 26. mfr_fan_config bit bit name meaning 15:13 freq[2:0] the freq bits set the pwm frequency. note: the device does not support pulse stretching. freq2 freq1 freq0 pwm frequency 0 0 0 30hz 0 0 1 50hz 0 1 0 100hz 0 1 1 150hz 1 0 0 reserved 1 0 1 reserved 1 1 0 reserved 1 1 1 25khz 12 dual_tach 0 = dual tach functionality is disabled. 1 = dual tach functionality is enabled. note: in dual tachometer applications, it is recommended that the slower tachometer signal be presented to the tach pin when tachsel = 0. 11:10 hys[1:0] the hys bits determine the amount of hysteresis the device uses to determine how far the tem - perature must fall below the temperature level threshold programmed in the lut before switch - ing to the lower pwm/rpm value. the hysteresis should be set lower than the minimum differ - ence between two adjacent temperature steps. these bits are ignored if automatic fan control is disabled. hsy1 hsy0 thermal hysteresis ( n c) 0 0 2 0 1 4 1 0 6 1 1 8 9 tsfo 0 = ramp to 100% pwm duty cycle if temp sensor faults (automatic fan mode) or if no fan_command_1 update occurs (manual fan mode) in any 10s period. 1 = temp sensor fault or update rate to fan_command_1 is ignored. operate at the last updated pwm/rpm value. note 1: a temp sensor fault is a faulty temperature sensor reading, not an overtemperature fault. note 2: in automatic fan mode, if the tsfo bit is set to 1, the device ignores a sensor fault and uses the remaining assigned temperature sensors (if any) to control the fan pwm duty cycle; or, if the fan has no available temperature sensors to use, it maintains the last updated pwm/rpm fan value before the fault occurred. 8 tacho 0 = ramp fan to 100% pwm duty cycle if fan fault is detected. 1 = do not ramp fan to 100% pwm duty cycle if fan fault is detected. note: if the fan fault is removed after ramping the pwm to 100% duty cycle, normal fan opera - tion is resumed.
6-channel intelligent fan controller MAX31785 42 table 26. mfr_fan_config (continued) note: it is recommended that the fan be disabled prior to changing mfr_fan_config. bit bit name meaning 7:5 ramp[2:0] the ramp bits select how fast the device ramps the pwm from one duty cycle to another (either up or down). in pwm mode, the following table always applies. in rpm mode, the fan speed is read either every 200ms or 1000ms and when the reported fan speed is within 20% of the target speed, the maximum allowed pwm duty cycle change is set to 1%. in rpm mode, the pwm duty cycle is not changed as long as the fan is within q 5% of the target speed. ramp2 ramp1 ramp0 pwm duty cycle update rate (ms) max pwm duty cycle change allowed (%) time to ramp from 40% to 100% pwm duty cycle (seconds) 0 0 0 1000 1 60 0 0 1 1000 2 30 0 1 0 1000 3 20 0 1 1 200 1 12 1 0 0 200 2 6 1 0 1 200 3 4 1 1 0 200 4 3 1 1 1 200 5 2.4 4 health the health bit controls the automatic checking of the fan health. the fan-health diagnostic can be enabled by setting this bit to 1. 0 = health meter function is disabled. 1 = health meter function is enabled. 3 rotor_hi_lo determines if a locked rotor indication is active low or active high. this bit is ignored if rotor = 0. 0 = rotor is active low (tach input is low if the rotor stops). 1 = rotor is active high (tach input is high if the rotor stops). 2 rotor the rotor bit selects if the fan does not have a tachometer but rather a stalled (or locked) rotor output. rotor fan output MAX31785 configuration 0 tachometer tach input expects fan rpm 1 stalled/locked rotor detect tach input expects locked rotor signal. the polarity is selected with the rotor_hi_lo bit (also set mfr_fan_fault_limit = 0001h). 1:0 spin[1:0] the spin bits determine how the device spins up (or starts) the fan from a dead stop. to over - come the initial mechanical fan inertia, the device can be programmed to drive the fan at 100% duty cycle until a programmable number of fan revolutions (cumulative count) is detected or a locked rotor signal is negated. the device allows a 2s startup period during which the fan speed monitors are disabled. if after 2s the fan does not respond, the pwm output remains at 100% duty cycle (if tacho = 0) or goes to 0% duty cycle (if tacho = 1). spin1 spin0 spin-up relaxation criteria 0 0 automatic spin-up disabled 0 1 two revolutions or locked rotor negated 1 0 four revolutions or locked rotor negated 1 1 eight revolutions or locked rotor negated
6-channel intelligent fan controller MAX31785 43 mfr_fan_lut (f2h) the mfr_fan_lut command is used to configure the lut that controls the fan. the fan has an lut that maps eight programmable temperature levels to eight programmable fan pwm duty-cycle levels (bit 6 in fan_config_1_2 is zero) or eight programmable target fan speeds (bit 6 in fan_config_1_2 is one). the lut allows a wide variety of profiles to be used. user note: the programmable configuration of mfr_fan_lut must be monotonic. table 27. mfr_fan_lut temperature step: temperature level setting the temperature step sets the temperature in degrees celsius and represents a threshold level at which the device updates the fan pwm duty cycle setting. the 2 data bytes are in direct format. the valid temperature range depends on the temperature sensor. table 28. valid temperature range byte number word name meaning 0-1 temp step 0 temperature for step 0. 2-3 speed step 0 fan pwm duty cycle or fan speed for step 0. 4-5 temp step 1 temperature for step 1. 6-7 speed step 1 fan pwm duty cycle or fan speed for step 1. 8-9 temp step 2 temperature for step 2. 10-11 speed step 2 fan pwm duty cycle or fan speed for step 2. 12-13 temp step 3 temperature for step 3. 14-15 speed step 3 fan pwm duty cycle or fan speed for step 3. 16-17 temp step 4 temperature for step 4. 18-19 speed step 4 fan pwm duty cycle or fan speed for step 4. 20-21 temp step 5 temperature for step 5. 22-23 speed step 5 fan pwm duty cycle or fan speed for step 5. 24-25 temp step 6 temperature for step 6. 26-27 speed step 6 fan pwm duty cycle or fan speed for step 6. 28-29 temp step 7 temperature for step 7. 30-31 speed step 7 fan pwm duty cycle or fan speed for step 7. temperature sensor valid range page 12: internal temp sensor -40 n c to +85 n c pages 13 to 16: i 2 c remote temp sensor -55 n c to +125 n c page 6 to 11: remote thermal diode temp sensor -40 n c to +120 n c
6-channel intelligent fan controller MAX31785 44 figure 6. fan lookup table (lut) format fan speed step: fan pwm duty cycle or fan speed setting if bit 6 in fan_config_1_2 is set to zero, the fan speed step sets the fan pwm duty cycle at each temperature step breakpoint. the valid duty cycle range is 0 to 100 (inclusive). any values greater than 100 (decimal) result in 100% pwm duty cycle being generated, and any values less than 0 (decimal) result in 0% pwm duty cycle. if bit 6 in fan_config_1_2 is set to 1, the fan speed step sets the fan target speed (in rpm) at each temperature step breakpoint. the valid fan speed range is 0 to 32,767 (inclusive). normalized temperatur e (from one or more temp sensors) s0 s1 s2 s3 s4 s5 s6 s7 maximum desired fan duty cycle or speed fan pwm duty cycl e or fan speed (in rpm) pwm = 0% duty cycl e t0 t1 t2 t3 t4 t5 t6 t7 therma l hysteresi s
6-channel intelligent fan controller MAX31785 45 mfr_read_fan_pwm (f3h) the mfr_read_fan_pwm command returns the latest real-time value for the fan pwm in % duty cycle. mfr_read_fan_pwm is updated whenever the pwm duty cycle is updated. this is determined by the rate bits in mfr_fan_config. the 2 data bytes are in direct format. mfr_fan_fault_limit (f5h) the mfr_fan_fault_limit command sets the value of the fan speed (in rpm) or percentage of target fan speed that causes a fan fault. fans operating below these limits for over 10s continuous trip the fault. when the fan is operating in rpm mode, the 10s checking period starts after the device has completed a pwm ramp of the fan speed. the slowest tachometer signal the device can measure for a fan is 60 rpm. in dual tachometer applications, the slow - est rpm is 360. tachometer signals slower than these minimums are reported as 0 rpm. fault and warning limits should be set to rpm values greater than these minimum rpm limits. the 2 data bytes are in direct format. set to 0000h to disable the limit checking. set to 0001h to only alarm when the tachometer input is locked for greater than 10s (this mode should be used when the fan only has a locked rotor output). in response to violation of the mfr_fan_fault_limit or if a stalled/locked rotor is detected, the device does the following: 1) sets the none of the above bit in status_byte. 2) sets the none of the above and fans bits in status_word. 3) sets the fan_1_fault bit in status_fans_1_2. 4) responds as specified in the mfr_fault_response. 5) notifies the host using alert assertion (if enabled in mfr_mode). user note: for proper fan operation, mfr_fan_fault_limit must be configured. mfr_fan_warn_limit (f6h) the mfr_fan_warn_limit command sets the value of the fan speed (in rpm) or percentage of target fan speed that causes a fan speed warning. fans operating below these limits for over 10s continuous trip the warning. when the fan is operating in rpm mode, the 10s checking period starts after the device has completed a pwm ramp of the fan speed. normally, the mfr_fan_warn_limit is set higher than the mfr_fan_fault_limit. the 2 data bytes are in direct format. set to 0000h to disable the limit checking. set to 0001h to generate a warning when using a locked rotor fan. in response to violation of the mfr_fan_warn_limit, the device does the following: 1) sets the none of the above bit in status_byte. 2) sets the none of the above and fans bits in status_word. 3) sets the fan_1_warn bit in status_fans_1_2. 4) notifies the host using alert assertion (if enabled in mfr_mode). table 29. monitored fan fault and warning parameters fan control mode limit parameter hysteresis for clearing the fault/ warning comparison interval manual pwm fan speed (in rpm) > (limit x 110%) checked once a second manual rpm percentage of programmed target fan speed > (limit + 5%) checked once a second automatic pwm fan speed (in rpm) > (limit x 110%) checked once a second automatic rpm percentage of lut target fan speed > (limit + 5%) checked once a second
6-channel intelligent fan controller MAX31785 46 table 30. mfr_fan_pwm2rpm mfr_fan_run_time (f7h) the mfr_fan_run_time command returns the number of hours of fan lifetime operation. once every hour, the device automatically stores this counter in flash memory. the counter is a 16-bit value that rolls over. the latest stored value is automatically recalled from flash memory upon device power cycle or rst action or a soft reset. this count can be reset to zero by writing a sequence of all zeros (0000h), followed by all ones (ffffh), followed by all zeros (0000h) within 8ms. this value is not updated when the fan is turned off (0% pwm duty cycle). mfr_fan_pwm_avg (f8h) the mfr_fan_pwm_avg command returns the lifetime average of the fan pwm duty cycle in % duty cycle. this aver - age is not updated when the fan is turned off (0% pwm duty cycle). when combined with the mfr_fan_run_time information, this duty cycle helps predict the remaining lifetime of the fan. once every hour, the device automatically stores this value in flash memory. the 2 data bytes are in direct format. the latest stored value is automatically recalled from flash memory upon device power cycle or rst action or a soft reset. this count can be reset to zero by writing a sequence of all zeros (0000h), followed by all ones (ffffh), followed by all zeros (0000h) within 8ms. mfr_fan_pwm2rpm (f9h) the mfr_fan_pwm2rpm command is used to configure the table the device uses to drive the fan-health status bits in the lower nibble of status_fan_1_2. the table maps four preassigned pwm duty cycles to the expected fan speed in rpm. table 30 describes the mfr_fan_pwm2rpm command. rpm@pwm: expected fan speed at a certain pwm duty cycle: the expected fan speed at four pwm duty cycles is used to determine the fan health. the fan speed is set in rpm at each pwm duty-cycle step breakpoint. the valid fan-speed range is 0 to 32,767 (inclusive). the 2 data bytes are in direct format. applications information power-supply decoupling to achieve the best results when using the device, decouple the v dd power supply with a 0.1 f f capacitor. use a high-quality, ceramic, surface-mount capacitor if possible. surface-mount components minimize lead inductance, which improves performance, and ceram - ic capacitors tend to have adequate high-frequency response for decoupling applications. decouple the reg25 and reg18 regulator outputs using 1 f f and 10nf capacitors (one each per output). open-drain pins msda, mscl, scl, sda, fault , and alert are open- drain pins and require external pullup resistors con - nected to v dd to realize high logic levels. byte number word name meaning 6-7 rpm@100% pwm expected fan speed for a pwm duty cycle of 100%. 4-5 rpm@80% pwm expected fan speed for a pwm duty cycle of 80%. 2-3 rpm@60% pwm expected fan speed for a pwm duty cycle of 60%. 0-1 rpm@40% pwm expected fan speed for a pwm duty cycle of 40%.
6-channel intelligent fan controller MAX31785 47 package information for the latest package outline information and land patterns, go to www.maxim-ic.com/packages . note that a +, #, or - in the package code indicates rohs status only. package drawings may show a different suffix character, but the drawing pertains to the package regardless of rohs status. typical operating circuit pwm0 msda mscl +3.3v v dd v ss sda scl 6 channels up to 4 channels tach0 rs+0 rs-0 pwm1 tach1 rs+1 rs-1 pwm2 tach2 rs+2 rs-2 pwm3 tach3 rs+3 rs-3 pwm4 tach4 rs+4 rs-4 pwm5 tach5 rs+5 rs-5 remote temperature diode each channel can read a remote temperature diode or a remote voltage remote voltage rst alert fault a0 host interface i 2 c temp sensor control reg18 a1/tachsel reg25 MAX31785 ds75l v spdt mux from tachsel optional support for two fans package type package code outline no. land pattern no. 40 tqfn-ep t4066+2 21-0141 90-0053
6-channel intelligent fan controller MAX31785 maxim cannot assume responsibility for use of any circuitry other than circuitry entirely embodied in a maxim product. no circuit patent licenses are implied. maxim reserves the right to change the circuitry and specifications without notice at any time. 48 maxim integrated products, 120 san gabriel drive, sunnyvale, ca 94086 408-737-7600 ? 2010 maxim integrated products maxim is a registered trademark of maxim integrated products, inc. revision history revision number revision date description pages changed 0 12/10 initial release


▲Up To Search▲   

 
Price & Availability of MAX31785

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X